/**
简单词法规则文件

antlr Hello.g4 // 生成Hello.java
javac Hello.java
// 包名不同时，lab.antlrtest换成需要的包名，同时切换目录到包名的父目录。如，此时需要切换到lab.antlrtest的父目录，即java目录下
grun.bat lab.antlrtest.Hello  tokens -tokens ./lab/antlrtest/hello.play // 解析、打印 hello.play　的token
*/

// lexer - 表示当前是一个规则文件，要与文件名相同
lexer grammar Hello;

@header {
package lab.antlrtest;
}

//关键字
If: 'if';
Int: 'int';

//int 常量
InteLiteral: [0-9]+;
//字符串常量, 问号（？）表示可选
StringLiteral: '"' .*?'"';

AssignmentOP: '=';
RelationalOP: '=='|'>'|'>='|'<'|'<=';
Star: '*';
Plus: '+';
Sharp: '#';
SemiColon: ';';
Dot: '.';
Comm: ',';
LeftBracket: '[';
RightBracket: ']';
LeftBrace: '{';
RightBrace: '}';
LeftParen: '(';
RightParen: ')';

Id: [a-zA-Z] ([a-zA-Z] | [0-9])*;

//空白字符an
Whitespace: [ \t]+ -> skip;
Newline: ('\r' '\n'?|'\n') -> skip;